/*
 *    Copyright (c) 2018-2025, proj All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the proj developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 * Author: proj
 */

package com.ykht.proj.coupon.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 优惠券领取记录表
 *
 * @author proj code generator
 * @date 2020-11-21 16:06:02
 */
@Data
@TableName("cn_coupon_log")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "优惠券领取记录表")
public class CnCouponLog extends Model<CnCouponLog> {
private static final long serialVersionUID = 1L;

    /**
     * 
     */
    @TableId
    @ApiModelProperty(value="")
    private Long id;
    /**
     * 优惠券编号
     */
    @ApiModelProperty(value="优惠券编号")

    private String couponNumber;
    /**
     * 优惠券Id
     */
    @ApiModelProperty(value="优惠券Id")
    private Long couponId;
    /**
     * 领取人Id
     */
    @ApiModelProperty(value="领取人Id")
    private Long recipientId;

    @ApiModelProperty(value="饭友id")
    private Long fyId;
    @ApiModelProperty(value="服务员id")
    private Long waiterId;
    @ApiModelProperty(value="文章id")
    private Long articleId;
    @ApiModelProperty(value="核销后给服务员的报酬")
    private Double rewardMoney;

	@ApiModelProperty(value = "品牌配置表ID")
	private Long confBrandPersonId;
    /**
     * 公司ID
     */
    @ApiModelProperty(value="公司ID")
    private Long companyId;
    /**
     * 品牌ID
     */
    @ApiModelProperty(value="品牌ID")
    private Long brandId;
    /**
     * 店铺Id
     */
    @ApiModelProperty(value="店铺Id")
    private Long shopId;
    /**
     * 领取日期
     */
    @ApiModelProperty(value="领取日期")
    private LocalDateTime receiveTime;

	@ApiModelProperty(value="该优惠券过期时间")
	private LocalDateTime expireTime;
    /**
     * 桌号
     */
    @ApiModelProperty(value="桌号")
    private Integer tabNum;
    /**
     * 消费金额
     */
    @ApiModelProperty(value="消费金额")
    private BigDecimal cnMoney;
    /**
     * 应付金额
     */
    @ApiModelProperty(value="应付金额")
    private BigDecimal payMoney;

    @ApiModelProperty(value="返佣金额")
    private BigDecimal returnMoney;

    @ApiModelProperty(value="分享id")
    private Long shareId;
	@ApiModelProperty(value="分享人ID")
	private Long shareUserId;

    @ApiModelProperty(value="反馈状态0通过1不通过")
    private Integer feedbackStatus;

    @ApiModelProperty(value="反馈内容")
    private String feedbackContent;

    @ApiModelProperty(value="反馈时间")
    private LocalDateTime feedbackTime;

    @ApiModelProperty(value="审核内容")
    private String checkContent;
    @ApiModelProperty(value="审核人")
    private Long checkUser;

	@ApiModelProperty(value="审核状态:0通过1不通过")
	private Integer checkStatus;

	@ApiModelProperty(value="审核时间")
	private LocalDateTime checkTime;

    /**
     * 核销码
     */
    @ApiModelProperty(value="核销码")
    private String verificationCode;
    /**
     * 状态0待使用，1已核销
     */
    @ApiModelProperty(value="状态0待使用，1已核销")
    private Integer status;
    @ApiModelProperty(value="分销状态0待反馈1待审核2无效驳回")
    private Integer fxStatus;
	/**
	 * 核销门店ID
	 */
	@ApiModelProperty(value="核销门店ID")
	private Long verificationShopId;
	@ApiModelProperty(value="核销人登录id")
	private Long verificationLoginId;
    /**
     * 核销门店(核销人ID（可能是门店 或者服务员）)
     */
    @ApiModelProperty(value=" 核销门店(核销人ID（可能是门店 或者服务员）)")
    private Long verificationShop;//verification_person
	/**
	 * 状核销类型  1 服务员  2 门店
	 */
	@ApiModelProperty(value="核销类型  1 服务员  2 门店")
	private Integer verificationType;

	/**
	 * 核销人
	 */
	@ApiModelProperty(value="核销人")
	private String verificationPerson;
    /**
     * 核销时间
     */
    @ApiModelProperty(value="核销时间")
    private LocalDateTime verificationTime;
    /**
     * 创建人
     */
    @ApiModelProperty(value="创建人")
    private Long createUser;
    /**
     * 修改人
     */
    @ApiModelProperty(value="修改人")
    private Long updateUser;
    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    private LocalDateTime createTime;
    /**
     * 更新时间
     */
    @ApiModelProperty(value="更新时间")
    private LocalDateTime updateTime;
    /**
     * 0可用1删除
     */
	@TableLogic
    @ApiModelProperty(value="0可用1删除")
    private Integer delFlag;
    /**
     * 租户ID
     */
    @ApiModelProperty(value="租户ID",hidden=true)
    private Integer tenantId;
    }
